<?php

class Application_Model_Home
{
	protected $_id_home;
	protected $_destacado_titulo; 
	protected $_destacado_subtitulo;
	protected $_destacado_contenido;
	protected $_testimonio_titulo;
	protected $_testimonio_contenido;
	protected $_principal_titulo;
	protected $_principal_subtitulo;
	protected $_principal_contenido;
	protected $_texto_promo_titulo;
	protected $_texto_promo_contenido;
	protected $_imagen_promo;
	protected $_imagen_tipo;
	
	
	
	public function __construct(array $options = null)
    {
        if (is_array($options)) {
            $this->setOptions($options);
        }
    }
 
    public function __set($name, $value)
    {
        $method = 'set' . $name;
        if (('mapper' == $name) || !method_exists($this, $method)) {
            throw new Exception('Invalid Home property');
        }
        $this->$method($value);
    }
 
    public function __get($name)
    {
        $method = 'get' . $name;
        if (('mapper' == $name) || !method_exists($this, $method)) {
            throw new Exception('La propiedad no existe en la clase Application_Model_Home');
        }
        return $this->$method();
    }
 
    public function setOptions(array $options)
    {
        $methods = get_class_methods($this);
        foreach ($options as $key => $value) {
            $method = 'set' . ucfirst($key);
            if (in_array($method, $methods)) {
                $this->$method($value);
            }
        }
        return $this;
    }
    
	public function getOptions(array $options)
    {
    	$methods = get_class_methods($this);
    	foreach ($methods as $value => $key) {
    		echo "$value => $key";
    	}
    	
//        foreach ($options as $key => $value) {
//            $method = 'get' . ucfirst($key);
//            if (in_array($method, $methods)) {
//                $val = $this->$method();
//            }
//        }
        return $this;
    }
    
	public function setId_home($text)
    {
        $this->_id_home = (string) $text;
        return $this;
    }
 
    public function getId_home()
    {
        return $this->_id_home;
    }
    
	public function setDestacado_titulo($text)
    {
        $this->_destacado_titulo = (string) $text;
        return $this;
    }
 
    public function getDestacado_titulo()
    {
        return $this->_destacado_titulo;
    }
    
	public function setDestacado_subtitulo($text)
    {
        $this->_destacado_subtitulo = (string) $text;
        return $this;
    }
 
    public function getDestacado_subtitulo()
    {
        return $this->_destacado_subtitulo;
    }
    
	public function setDestacado_contenido($text)
    {
        $this->_destacado_contenido = (string) $text;
        return $this;
    }
 
    public function getDestacado_contenido()
    {
        return $this->_destacado_contenido;
    }
    
	public function setTestimonio_titulo($text)
    {
        $this->_testimonio_titulo = (string) $text;
        return $this;
    }
 
    public function getTestimonio_titulo()
    {
        return $this->_testimonio_titulo;
    }
    
	public function setTestimonio_contenido($text)
    {
        $this->_testimonio_contenido = (string) $text;
        return $this;
    }
 
    public function getTestimonio_contenido()
    {
        return $this->_testimonio_contenido;
    }
    
	public function setPrincipal_titulo($text)
    {
        $this->_principal_titulo = (string) $text;
        return $this;
    }
 
    public function getPrincipal_titulo()
    {
        return $this->_principal_titulo;
    }
    
	public function setPrincipal_subtitulo($text)
    {
        $this->_principal_subtitulo = (string) $text;
        return $this;
    }
 
    public function getPrincipal_subtitulo()
    {
        return $this->_principal_subtitulo;
    }
    
	public function setPrincipal_contenido($text)
    {
        $this->_principal_contenido = (string) $text;
        return $this;
    }
 
    public function getPrincipal_contenido()
    {
        return $this->_principal_contenido;
    }
    
	public function setTexto_promo_titulo($text)
    {
        $this->_texto_promo_titulo = (string) $text;
        return $this;
    }
 
    public function getTexto_promo_titulo()
    {
        return $this->_texto_promo_titulo;
    }

	public function setTexto_promo_contenido($text)
    {
        $this->_texto_promo_contenido = (string) $text;
        return $this;
    }
 
    public function getTexto_promo_contenido()
    {
        return $this->_texto_promo_contenido;
    }
    
	public function setImagen_promo($text)
    {
        $this->_imagen_promo = (string) $text;
        return $this;
    }
 
    public function getImagen_promo()
    {
        return $this->_imagen_promo;
    }
    
	public function setImagen_tipo($text)
    {
        $this->_imagen_tipo = (string) $text;
        return $this;
    }
 
    public function getImagen_tipo()
    {
        return $this->_imagen_tipo;
    }
}

